레젠위키
the tree
| r1 vs r2 | ||
|---|---|---|
| 1 | 1 | [[분류:위키 엔진]] |
| 2 | 2 | [[분류:나무마크]] |
| 3 | 3 | |
| 4 | 4 | ||<tablealign=right><tablewidth=450><tablebordercolor=#5865F2,#5865F2><tablebgcolor=#5865F2,#5865F2><-2><:> '''{{{#white {{{+3 the tree}}}}}}''' || |
| 5 | 5 | ||<width=30%><colbgcolor=#f5faff,#373a3c><colcolor=#000,#eee> '''정식 명칭''' ||the tree|| |
| 6 | 6 | ||<bgcolor=#f5faff,#373a3c> '''개발''' ||hyonsu (GitHub: wjdgustn)|| |
| 7 | 7 | ||<bgcolor=#f5faff,#373a3c> '''유형''' ||위키 엔진|| |
| 8 | 8 | ||<bgcolor=#f5faff,#373a3c> '''기반''' ||Node.js|| |
| 9 | 9 | ||<bgcolor=#f5faff,#373a3c> '''DB''' ||MongoDB|| |
| 10 | 10 | ||<bgcolor=#f5faff,#373a3c> '''검색''' ||Meilisearch|| |
| 11 | 11 | ||<bgcolor=#f5faff,#373a3c> '''프론트엔드''' ||thetree-frontend(스킨 빌드 방식)|| |
| 12 | 12 | ||<bgcolor=#f5faff,#373a3c> '''데모''' ||[[https://testwiki.hyonsu.com|{{{#5865F2,#9ec5ff testwiki.hyonsu.com}}}]]|| |
| 13 | 13 | ||<bgcolor=#f5faff,#373a3c> '''공식 저장소''' ||[[https://github.com/wjdgustn/thetree|{{{#5865F2,#9ec5ff GitHub}}}]]|| |
| 14 | 14 | |
| 15 | 15 | [목차] |
| 16 | 16 | [clearfix] |
| 17 | 17 | |
| 18 | 18 | == 개요 == |
| 19 | 19 | the tree는 나무마크 호환을 지향하는 위키 엔진이다. the seed 엔진의 시스템을 참고하여 구현되었으며, 완전 동일한 구현을 목표로 하지는 않는다고 안내되어 있다. |
| 20 | 20 | |
| 21 | 21 | == 특징 == |
| 22 | 22 | === 나무마크 호환 === |
| 23 | 23 | 나무마크 기반 문법을 지원하는 것을 목표로 한다. |
| 24 | 24 | |
| 25 | 25 | === 스킨(프론트엔드) 빌드 구조 === |
| 26 | 26 | 엔진과 별도로 thetree-frontend 레포지토리를 통해 스킨을 빌드하여 적용하는 구조를 사용한다. 스킨 제작 가이드를 참고하여 자유롭게 스킨을 제작할 수 있다고 안내되어 있다. |
| 27 | 27 | |
| 28 | 28 | === 플러그인/확장 === |
| 29 | 29 | 매크로 추가 등 플러그인 기능에 대해 언급되어 있으며, 엔진 수정이 필요한 경우 별도 협의를 요청하도록 안내되어 있다. |
| 30 | 30 | |
| 31 | 31 | === 개발자 지원 기능(dev support) === |
| 32 | 32 | 엔진에 개발자(엔진 제작자)의 위키 소유자 권한 접근을 허용하는 기능이 내장되어 있다고 안내되어 있으며, 관련 동작은 감사 로그에 기록된다고 한다. 필요 시 devConfig.json의 disable_dev_support 값을 true로 설정하여 비활성화할 수 있다고 안내되어 있다. |
| 33 | 33 | |
| 34 | 34 | == 요구 사항 == |
| 35 | 35 | * Node.js |
| 36 | 36 | * MongoDB |
| 37 | 37 | * Meilisearch |
| 38 | 38 | * (스킨 적용을 위한) thetree-frontend |
| 39 | 39 | |
| 40 | 40 | == 설치 == |
| 41 | 41 | === 일반 설치 === |
| 42 | 42 | 1. git clone으로 엔진을 다운로드한다. |
| 43 | 43 | 2. .env.example을 .env로 복사 후 값을 채운다. |
| 44 | 44 | 3. *.example.json을 *.json으로 복사 후 값을 채운다. |
| 45 | 45 | 4. npm i로 의존성을 설치한다. |
| 46 | 46 | 5. thetree-frontend의 스킨 적용 가이드를 따라 스킨을 빌드한다. |
| 47 | 47 | 6. pm2 등 프로세스 매니저로 main.js를 실행한다. |
| 48 | 48 | 7. 첫 가입자는 자동으로 소유자 권한을 부여받으며, 초기 설정 페이지로 이동한다. (탭을 닫은 경우 /admin/initial_setup) |
| 49 | 49 | |
| 50 | 50 | === Docker 설치 === |
| 51 | 51 | 레포지토리에서 제공하는 compose 템플릿(compose-full.yaml 또는 compose-min.yaml)을 수정하여 구동한다. |
| 52 | 52 | 구동 후 /member/signup에서 가입하고 /admin/initial_setup에서 초기 설정을 진행한다. |
| 53 | 53 | |
| 54 | 54 | == 라이선스 == |
| 55 | 55 | the tree는 오픈소스 라이선스를 적용하지 않는다고 안내되어 있다. |
| 56 | 56 | 엔진을 위키 구동에 사용하는 것은 허가되나, 엔진 수정 및 재배포는 금지된다고 안내되어 있다. |
| 57 | 57 | |
| 58 | 58 | == 관련 프로젝트 == |
| 59 | 59 | * [[https://github.com/wjdgustn/thetree-frontend|thetree-frontend]]: the tree 엔진용 프론트엔드/스킨 빌드 레포지토리 |
| 60 | 60 | * [[https://github.com/wjdgustn/thetree-monaco|thetree-monaco]]: Monaco Editor 플러그인 |
| 61 | 61 | |
| 62 | 62 | == 외부 링크 == |
| 63 | 63 | * [[https://github.com/wjdgustn/thetree|thetree (GitHub)]] |
| 64 | 64 | * [[https://testwiki.hyonsu.com|데모 위키]] |
| 65 | 65 | * [[https://github.com/wjdgustn/thetree-frontend|thetree-frontend]] |
| 66 | 66 | * [[https://github.com/wjdgustn/thetree-monaco|thetree-monaco]] |
| 67 | 67 |